﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000EF3 RID: 3827
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RogueHandbook : IMessage<RogueHandbook>, IMessage, IEquatable<RogueHandbook>, IDeepCloneable<RogueHandbook>, IBufferMessage
	{
		// Token: 0x170030A0 RID: 12448
		// (get) Token: 0x0600ABAD RID: 43949 RVA: 0x001D0980 File Offset: 0x001CEB80
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RogueHandbook> Parser
		{
			get
			{
				return RogueHandbook._parser;
			}
		}

		// Token: 0x170030A1 RID: 12449
		// (get) Token: 0x0600ABAE RID: 43950 RVA: 0x001D0987 File Offset: 0x001CEB87
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RogueHandbookReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x170030A2 RID: 12450
		// (get) Token: 0x0600ABAF RID: 43951 RVA: 0x001D0999 File Offset: 0x001CEB99
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RogueHandbook.Descriptor;
			}
		}

		// Token: 0x0600ABB0 RID: 43952 RVA: 0x001D09A0 File Offset: 0x001CEBA0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueHandbook()
		{
		}

		// Token: 0x0600ABB1 RID: 43953 RVA: 0x001D09D4 File Offset: 0x001CEBD4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueHandbook(RogueHandbook other) : this()
		{
			this.miracleList_ = other.miracleList_.Clone();
			this.buffList_ = other.buffList_.Clone();
			this.eventList_ = other.eventList_.Clone();
			this.aeonList_ = other.aeonList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600ABB2 RID: 43954 RVA: 0x001D0A3C File Offset: 0x001CEC3C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RogueHandbook Clone()
		{
			return new RogueHandbook(this);
		}

		// Token: 0x170030A3 RID: 12451
		// (get) Token: 0x0600ABB3 RID: 43955 RVA: 0x001D0A44 File Offset: 0x001CEC44
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueHandbookMiracleInfo> MiracleList
		{
			get
			{
				return this.miracleList_;
			}
		}

		// Token: 0x170030A4 RID: 12452
		// (get) Token: 0x0600ABB4 RID: 43956 RVA: 0x001D0A4C File Offset: 0x001CEC4C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueHandbookMazeBuff> BuffList
		{
			get
			{
				return this.buffList_;
			}
		}

		// Token: 0x170030A5 RID: 12453
		// (get) Token: 0x0600ABB5 RID: 43957 RVA: 0x001D0A54 File Offset: 0x001CEC54
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueHandbookEventInfo> EventList
		{
			get
			{
				return this.eventList_;
			}
		}

		// Token: 0x170030A6 RID: 12454
		// (get) Token: 0x0600ABB6 RID: 43958 RVA: 0x001D0A5C File Offset: 0x001CEC5C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<RogueHandbookAeonInfo> AeonList
		{
			get
			{
				return this.aeonList_;
			}
		}

		// Token: 0x0600ABB7 RID: 43959 RVA: 0x001D0A64 File Offset: 0x001CEC64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RogueHandbook);
		}

		// Token: 0x0600ABB8 RID: 43960 RVA: 0x001D0A74 File Offset: 0x001CEC74
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RogueHandbook other)
		{
			return other != null && (other == this || (this.miracleList_.Equals(other.miracleList_) && this.buffList_.Equals(other.buffList_) && this.eventList_.Equals(other.eventList_) && this.aeonList_.Equals(other.aeonList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600ABB9 RID: 43961 RVA: 0x001D0AF4 File Offset: 0x001CECF4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.miracleList_.GetHashCode();
			num ^= this.buffList_.GetHashCode();
			num ^= this.eventList_.GetHashCode();
			num ^= this.aeonList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600ABBA RID: 43962 RVA: 0x001D0B52 File Offset: 0x001CED52
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600ABBB RID: 43963 RVA: 0x001D0B5A File Offset: 0x001CED5A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600ABBC RID: 43964 RVA: 0x001D0B64 File Offset: 0x001CED64
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			this.eventList_.WriteTo(ref output, RogueHandbook._repeated_eventList_codec);
			this.buffList_.WriteTo(ref output, RogueHandbook._repeated_buffList_codec);
			this.aeonList_.WriteTo(ref output, RogueHandbook._repeated_aeonList_codec);
			this.miracleList_.WriteTo(ref output, RogueHandbook._repeated_miracleList_codec);
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600ABBD RID: 43965 RVA: 0x001D0BCC File Offset: 0x001CEDCC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.miracleList_.CalculateSize(RogueHandbook._repeated_miracleList_codec);
			num += this.buffList_.CalculateSize(RogueHandbook._repeated_buffList_codec);
			num += this.eventList_.CalculateSize(RogueHandbook._repeated_eventList_codec);
			num += this.aeonList_.CalculateSize(RogueHandbook._repeated_aeonList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600ABBE RID: 43966 RVA: 0x001D0C40 File Offset: 0x001CEE40
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RogueHandbook other)
		{
			if (other == null)
			{
				return;
			}
			this.miracleList_.Add(other.miracleList_);
			this.buffList_.Add(other.buffList_);
			this.eventList_.Add(other.eventList_);
			this.aeonList_.Add(other.aeonList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600ABBF RID: 43967 RVA: 0x001D0CAC File Offset: 0x001CEEAC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600ABC0 RID: 43968 RVA: 0x001D0CB8 File Offset: 0x001CEEB8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 74U)
				{
					if (num == 18U)
					{
						this.eventList_.AddEntriesFrom(ref input, RogueHandbook._repeated_eventList_codec);
						continue;
					}
					if (num == 74U)
					{
						this.buffList_.AddEntriesFrom(ref input, RogueHandbook._repeated_buffList_codec);
						continue;
					}
				}
				else
				{
					if (num == 90U)
					{
						this.aeonList_.AddEntriesFrom(ref input, RogueHandbook._repeated_aeonList_codec);
						continue;
					}
					if (num == 106U)
					{
						this.miracleList_.AddEntriesFrom(ref input, RogueHandbook._repeated_miracleList_codec);
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040045B5 RID: 17845
		private static readonly MessageParser<RogueHandbook> _parser = new MessageParser<RogueHandbook>(() => new RogueHandbook());

		// Token: 0x040045B6 RID: 17846
		private UnknownFieldSet _unknownFields;

		// Token: 0x040045B7 RID: 17847
		public const int MiracleListFieldNumber = 13;

		// Token: 0x040045B8 RID: 17848
		private static readonly FieldCodec<RogueHandbookMiracleInfo> _repeated_miracleList_codec = FieldCodec.ForMessage<RogueHandbookMiracleInfo>(106U, RogueHandbookMiracleInfo.Parser);

		// Token: 0x040045B9 RID: 17849
		private readonly RepeatedField<RogueHandbookMiracleInfo> miracleList_ = new RepeatedField<RogueHandbookMiracleInfo>();

		// Token: 0x040045BA RID: 17850
		public const int BuffListFieldNumber = 9;

		// Token: 0x040045BB RID: 17851
		private static readonly FieldCodec<RogueHandbookMazeBuff> _repeated_buffList_codec = FieldCodec.ForMessage<RogueHandbookMazeBuff>(74U, RogueHandbookMazeBuff.Parser);

		// Token: 0x040045BC RID: 17852
		private readonly RepeatedField<RogueHandbookMazeBuff> buffList_ = new RepeatedField<RogueHandbookMazeBuff>();

		// Token: 0x040045BD RID: 17853
		public const int EventListFieldNumber = 2;

		// Token: 0x040045BE RID: 17854
		private static readonly FieldCodec<RogueHandbookEventInfo> _repeated_eventList_codec = FieldCodec.ForMessage<RogueHandbookEventInfo>(18U, RogueHandbookEventInfo.Parser);

		// Token: 0x040045BF RID: 17855
		private readonly RepeatedField<RogueHandbookEventInfo> eventList_ = new RepeatedField<RogueHandbookEventInfo>();

		// Token: 0x040045C0 RID: 17856
		public const int AeonListFieldNumber = 11;

		// Token: 0x040045C1 RID: 17857
		private static readonly FieldCodec<RogueHandbookAeonInfo> _repeated_aeonList_codec = FieldCodec.ForMessage<RogueHandbookAeonInfo>(90U, RogueHandbookAeonInfo.Parser);

		// Token: 0x040045C2 RID: 17858
		private readonly RepeatedField<RogueHandbookAeonInfo> aeonList_ = new RepeatedField<RogueHandbookAeonInfo>();
	}
}
